package lc.inte;

/**
 * 实现一个算法，确定一个字符串 s 的所有字符是否全都不同。
 */
public class Q0101 {

    public boolean isUnique(String astr) {
        // 采用位运算
        // 原字符总共26位。而int时32位，所以直接通过int去判断即可
        int start = 0;
        for (char c : astr.toCharArray()) {
            int ind = c - 'a';
            final int compare = 1 << ind;
            if ((start & compare) != 0) {
                return false;
            }
            start = start | compare;
        }
        return true;
    }

    public static void main(String[] args) {
        final Q0101 q0101 = new Q0101();
        System.out.println(q0101.isUnique("leetcode"));
    }

}
